
export default class BaseClass extends cc.Component {

	JS_Name: string;
	shareDefine: any;
	onLoad() {
		var argList = Array.prototype.slice.call(arguments);

		this.JS_Name = "BaseClass";
		this.Init.apply(this, argList);

		this.shareDefine = ShareDefine;
	}

	// Init(){
	// }

	// private getChildByPath(path:String){
	// 	let list = path.split('/');
	// 	let node = null;
	// 	for (let i = 0; i < list.length; i++) {
	// 		node = this.node.getChildByName(list[i]);
	// 	}
	// 	return node;
	// }

	// /**
	//  * 
	//  * @param viewName 路径
	//  * @returns 
	//  */
	// public ViewNode(viewName): cc.Node {
    //     var node = this.getChildByPath(viewName);
    //     return node;
    // }

	// /**
	//  * 
	//  * @param viewName 路径，组件名字
	//  * @param classConstructor 
	//  * @returns 
	//  */
    // public ViewComponent<T extends cc.Component>(viewName: string, classConstructor): T {
    //     var node = this.getChildByPath(viewName);
    //     if(node === null) {
    //         return null;
    //     }

    //     var com = node.getComponent(classConstructor);
    //     return com as T;
    // } 

    // //是否开发者模式
    // IsDevelopment(){
    //     return this.ShareDefine.IsDevelopment
    // }

	// //获取包装后的log文本
	// GetLogFormatList(argList){
	// 	var len = argList.length;
	// 	var logText = argList[0];
	// 	//第一个不是文本格式
	// 	if(typeof(logText) != "string"){
	// 		return argList
	// 	}

	// 	//如果是谷歌浏览器,包装颜色
	// 	if(cc.sys.browserType == "chrome"){
	// 		//如果末尾有携带颜色配置
	// 		var colorType = argList[len - 1];
	// 		var color = this.ShareDefine.ChromeLogColorDict[colorType];
	// 		//如果存在颜色,替换最后一个参数为颜色值
	// 		if(color){
	// 			//删除末尾的颜色标示
	// 			argList.pop();

	// 			//文本开头添加颜色标示%c
	// 			logText = "%c" + logText;

	// 			//在文本后面插入一个颜色值
	// 			argList.splice(1, 0, color);
	// 		}
	// 	}
	// 	else{
	// 		var colorType = argList[len - 1];
	// 		var color = this.ShareDefine.ChromeLogColorDict[colorType];
	// 		if(color){
	// 			//删除末尾的颜色标示
	// 			argList.pop();
	// 		}
	// 	}

	// 	//第一个默认是字符串加上文件标示
	// 	argList[0] = this.JS_Name + "\t" + logText;
	// 	return argList
	// }

	// //接收不定参
	// Log(){
	// 	if(this.IsDevelopment()){
	// 		var argList = Array.prototype.slice.call(arguments);
	// 		argList = this.GetLogFormatList(argList);
	// 		cc.log.apply(null, argList)
	// 	}
	// }

	// //网络通信log
	// NetLog(){
	// 	if(this.IsDevelopment()){
	// 		var argList = Array.prototype.slice.call(arguments);
	// 		argList = this.GetLogFormatList(argList);
	// 		cc.log.apply(null, argList)
	// 	}
	// }

	// //接收不定参
	// SysLog(){
	// 	var argList = Array.prototype.slice.call(arguments);
	// 	argList = this.GetLogFormatList(argList);
	// 	cc.log.apply(null, argList)
	// }

	// //接收不定参
	// WarnLog(){
	// 	if(this.IsDevelopment()){
	// 		var argList = Array.prototype.slice.call(arguments);
	// 		argList = this.GetLogFormatList(argList);
	// 		cc.warn.apply(null, argList)
	// 	}
	// }
	
	// //接收不定参
	// ErrLog(){
	// 	var argList = Array.prototype.slice.call(arguments);
	// 	argList = this.GetLogFormatList(argList);
	// 	cc.error.apply(null, argList)
	// }
}
